home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The X-Philes (2nd Revision)
/
The X-Philes Number 1 (1995).iso
/
xphiles
/
hp48_1
/
psychrom
< prev
next >
Wrap
Text File
|
1995-03-31
|
6KB
|
308 lines
PSYCH - PSYCHROMETRIC PROGRAM FOR THE 48SX
KEVIN TURNER
10-10-90
After downloading the directory to your calculator, press {PSYCH} to
start. This is the only file you need execute. All units are American
uh.. I mean English. Press {CONT} after each input.
You will first be asked for the ambient temperature and ambient pressure.
Note: These values are only used to calculate availability, so you don't
have to know these values if you're not interested in that stuff.
Then you will be asked for the temperature and pressure of the air/water
vapor mixture.
Next you must acknowledge that you know ONE of the following:
{A} wet bulb temperature
{B} dew point temperature
{C} relative humidity
{D} humidity ratio
You will be asked for the value of the item you choose.
After a bit of calculating time, dew point temperature, wet bulb
temperature,relative humidity, humidity ratio, enthalpy, volume,
and availability will appear on three pages. Use the {PAGES} key to cycle
the pages and {QUIT} to quit the program.
Note: The program may iterate indefinitely if improper values are used.
This program seems to give pretty good answers within reasonable,everyday
limits, but I'm not responsible for any mistakes. I mainly used algebraic
formulas and EVAL to do the calculations -- so if you know anything about
thermodynamics you should be able to follow the calculations. Feel free
to edit, simplify, correct, change, or do anything your heart desires to
this program.
%%HP: T(3)A(D)F(.);
DIR
PSYCH
\<< RCLF
'MYFLAGS' STO 0
'PAGE' STO 4 FIX
-56 CF CLLCD { {
"CONT" CONT } }
TMENU
"PSYCHROMETRIC PROGRAM"
1 DISP 1 WAIT
"Enter ambient temp.
(\^oF)"
PROMPT 'T0' STO
"Enter ambient press.
(psia)"
PROMPT 'P0' STO
"Enter mixture temp.
(\^oF)"
PROMPT 'T' STO
"Enter mixture press.
(psia)"
PROMPT 'P' STO
CLLCD
" Choose Known:
A) Wet bulb temp.
B) Dew point temp.
C) Relative humidity
D) Humidity ratio"
2 DISP 3 FREEZE {
"" { "A" {
\<< { { "CONT"
CONT } } TMENU
"Enter wet bulb temp.
(\^oF)"
PROMPT 'TWB' STO '(
CPAIR*(TWB-T)+.622*
PSAT(TWB)/(P-PSAT(
TWB))*HFG(TWB))/(
CPWATER*(T-TWB)+HFG
(TWB))' EVAL 'W'
STO 'P/(.622/W+1)/
PSAT(T)' EVAL 'PHI'
STO 'TSAT(P/(.622/W
+1))' EVAL 'TDP'
STO 'P/(.622/W+1)'
EVAL SCND OUTPUT {
{ "PAGE" OUTPUT } {
} { } { } { } {
"QUIT" {
\<< 2 MENU
'MYFLAGS' DUP EVAL
STOF PURGE
\>> } } }
TMENU
\>> } } { "B" {
\<< { { "CONT"
CONT } } TMENU
"Enter dewpoint temp.
(\^oF)"
PROMPT 'TDP' STO '
PSAT(TDP)*.622/(P-
PSAT(TDP))' EVAL
'W' STO 'PSAT(TDP)/
PSAT(T)' EVAL 'PHI'
STO WET TDP PSAT
SCND OUTPUT { {
"PAGE" OUTPUT } { }
{ } { } { } {
"QUIT" {
\<< 2 MENU
'MYFLAGS' DUP EVAL
STOF PURGE
\>> } } }
TMENU
\>> } } { "C" {
\<< { { "CONT"
CONT } } TMENU
" Enter rel. humidity
(.XX)"
PROMPT 'PHI' STO '
PHI*PSAT(T)*.622/(P
-PHI*PSAT(T))' EVAL
'W' STO 'TSAT(PHI*
PSAT(T))' EVAL
'TDP' STO WET 'PHI*
PSAT(T)' EVAL SCND
OUTPUT { { "PAGE"
OUTPUT } { } { } {
} { } { "QUIT" {
\<< 2 MENU
'MYFLAGS' DUP EVAL
STOF PURGE
\>> } } }
TMENU
\>> } } { "D" {
\<< { { "CONT"
CONT } } TMENU
"Enter humidity ratio"
PROMPT 'W' STO 'P/(
.622/W+1)/PSAT(T)'
EVAL 'PHI' STO '
TSAT(P/(.622/W+1))'
EVAL 'TDP' STO WET
'P/(.622/W+1)' EVAL
SCND OUTPUT { {
"PAGE" OUTPUT } { }
{ } { } { } {
"QUIT" {
\<< 2 MENU
'MYFLAGS' DUP EVAL
STOF PURGE
\>> } } }
TMENU
\>> } } } TMENU
\>>
WET
\<< W T \-> w t
\<< t 'TWB' STO
1 'W2' STO CLLCD
" ITERATING FOR WET
BULB TEMPERATURE"
3 DISP 3 FREEZE
WHILE W2 w
>
REPEAT .622
TWB PSAT * P TWB
PSAT - / DUP 'WWB'
STO TWB HFG t \-> wwb
hfg t
\<< CPAIR
TWB T - * wwb hfg *
+ CPWATER T TWB - *
hfg + /
\>> 'W2'
STO TWB 1 - 'TWB'
STO
END
WHILE w W2
>
REPEAT .622
TWB PSAT * P TWB
PSAT - / DUP 'WWB'
STO TWB HFG t \-> wwb
hfg t
\<< CPAIR
TWB T - * wwb hfg *
+ CPWATER T TWB - *
hfg + /
\>> 'W2'
STO TWB .05 + 'TWB'
STO
END
\>> { W2 WWB }
PURGE
\>>
SCND
\<< \-> pv
\<< CLLCD '
CPAIR*T+W*(HG(TDP)+
CPWATER*(T-TDP))'
EVAL 'H' STO T
459.67 + 53.352 * P
144 * / 1 1.6078 W
* + * 'V' STO '
CPAIR*T-CPAIR*T0-(
T0+459.67)*(CPAIR*
LN((T+459.67)/(T0+
459.67))-RAIR*LN((P
-pv)/(P0-PSAT(T0)))
)+W*(HG(TDP)+
CPWATER*(T-TDP)-HG(
T0)-(T0+459.67)*(SG
(TDP,HFG(TDP))+
CPWATER*LN((T+
459.67)/(TDP+459.67
))-SG(T0,HFG(T0))))
' EVAL 'PSI' STO
\>>
\>>
OUTPUT
\<< CLLCD
CASE PAGE 0
==
THEN 1
'PAGE' STO
" dew point temp="
2 FIX " "
TDP \->STR " \^oF" + +
" wet bulb temp="
" " TWB \->STR
" \^oF" + +
" relative humidity="
1 FIX " "
PHI 100 * \->STR "%"
+ + 6 DISP 5 DISP 4
DISP 3 DISP 2 DISP
1 DISP 3 FREEZE
END PAGE 1
==
THEN 2
'PAGE' STO
" humidity ratio="
2 SCI " " W
\->STR +
" enthalpy=" 2
FIX " " H \->STR
" Btu/lbm" + +
" volume=" V
\->STR
" ft^3/lbm dry air"
+ 6 DISP 5 DISP 4
DISP 3 DISP 2 DISP
1 DISP 3 FREEZE
END PAGE 2
==
THEN 0
'PAGE' STO
" availability="
" " PSI \->STR
" Btu/lbm R" + + 2
DISP 1 DISP 3
FREEZE
END
END
\>>
PSI
(206.679092379,99.0072145663)
V 13.6265634211
H 25.1206282091
PAGE 0
TDP 30.01457502
PHI .12
W 3.4152060814E-3
TWB 58.85
P 15
T 89
P0 0
T0 0
SG
\<< \-> t hfg 'LN((
t+460)/492)+hfg/(t+
460)'
\>>
HG
\<< \-> t '.4369*(t
-45)+1081.5'
\>>
HFG
\<< \-> t '1068.4-
.56615*(t-45)'
\>>
TSAT
\<< \-> p '1/(1/
495.02-LN(p/.1)/
9670)-460'
\>>
PSAT
\<< \-> t '.1*EXP(
-9670*(1/(t+460)-1/
495.02))'
\>>
CPAIR .24
CPWATER .444
RAIR .06856
END